home *** CD-ROM | disk | FTP | other *** search
/ Merciful 2 / Merciful - Disc 2.iso / software / d / dialupv3.06.lha / dialup / dialup.doc < prev    next >
Text File  |  1996-01-31  |  30KB  |  807 lines

  1.  
  2.  
  3.                       Samson
  4.  
  5.                           offers:
  6.  
  7.  
  8.                  _____  _       _
  9.                 |  __ \(_)     | |
  10.                 | |  | |_  __ _| |_   _ _ __
  11.                 | |  | | |/ _` | | | | | '_ \
  12.                 | |__| | | (_| | | |_| | |_) |
  13.                 |_____/|_|\__,_|_|\__,_| .__/
  14.                                        | |
  15.                      Version 3.03      |_|
  16.                      ------------
  17.  
  18. --------------------------- BY GENE HESKETT -----------------------
  19. Humm, well, it was 3.03 once I guess, but the one I downloaded was 3.05.
  20. This 3.06 upload is a relatively small change, the need for which was
  21. created by my ISP's signin treatment.  Once the "CONNECT etc" string is
  22. received from the modem, carraige returns are needed to "wake up the VAX".
  23. The number of cr's needed to get the "Username>" from it varied from 1 to
  24. 3.  A simple string of cr's defined as the "WUS" often required 20+ of
  25. them, and often caused the VAX to come alive at the wrong baud rate if it
  26. didn't decide it was gibberish and ignored it!
  27.  
  28. The handling of any strings sent during login included the translation
  29. insitu of any cr's, lf's and tabs to their real equ's followed by a left
  30. shift of the string to cause the overwrite of the backslash with the actual
  31. character.  Only after the translation was completed was the string
  32. actually sent to the modem.
  33.  
  34. This fix is a crude, brute force method.  The original uploader, Thomas
  35. Kobler, when contacted, indicated he no longer had a computer at home.
  36. Rather than attempt a full re-write to change methods, I simply duplicated
  37. 3 functions with new names, rewrote them to handle a /* as causeing a 1/4
  38. second delay, and used these new functions only for sending the WUS.  It is
  39. now sent to the modem one byte at a time.  Crude, added a kilobyte or more
  40. to the code, but it works.  Also without Mr. Koblers explicite permission,
  41. I hope he doesn't mind.  Since he did furnish the source code, I'm assuming
  42. he meant it as raw materiel to be patched and polished by those who could.
  43. This isn't "polish", its an outright hack! But it works 100% of the time
  44. now under those "sleepy VAX" conditions. See "WAKEUPSTRING" for syntax.
  45. --------------------- End of this note section -----------------------
  46.  
  47.           PLEASE READ THE DOCS, DIALUP IP IS NO EASY THING!
  48.  
  49.     PLEASE TRY THE OPTION 'TEST', IT IS INCREDIBLY HELPFUL. YOU CAN
  50.     TEST EVERYTHING LOCALLY WITHOUT WASTING ANY MONEY ON PHONECALLS.
  51.  
  52.  
  53.          ITS NOT PUBLIC DOMAIN, ITS NO SHAREWARE, NO FREEWARE,
  54.           GIFTWARE OR CARDWARE AND HAS NO COPYLEFT OR -RIGHT.
  55.  
  56.              ITS SIMPLY A PROGRAMM TO USE, IF YOU LIKE.
  57.  
  58.              AND EVEN BETTER: IT NOW COMES WITH SOURCES!
  59.                (If you have troubles with the program,
  60.                 first take a look at the sourcecode.)
  61.  
  62.  
  63.  
  64.  P U R P O S E:
  65.  --------------
  66.  
  67.  This programm is intended to establish a dialup IP connection (SLIP or PPP)
  68.  to another computer. It is assumed that a modem or a similiar device is
  69.  connected to a serial line of your amiga. (An ISDNMASTER with approriate
  70.  device does work, too)
  71.  
  72.  
  73.  
  74.  R E Q U I R E M E N T S:
  75.  ------------------------
  76.  
  77.  - Installed and *tested* AmiTCP or AS225
  78.  - appropriate Sana2 Driver for your intended connection
  79.  - min. OS 2.04
  80.  
  81.  
  82.  
  83.  H O W   T O   B E G I N:
  84.  ------------------------
  85.  
  86.  To start, you should do the dialup manualy, first. If you have figured
  87.  out the commands for the modem and its results, and the questions of the
  88.  remote site and the expected answers, you can use dialup with the
  89.  appropriate options:
  90.  
  91.    LOGINPROMPT, LOGINNAME, PASSWORDPROMPT, PASSWORD, CONNECTSTRING, etc..
  92.  
  93.  A few of them are required, but most of them are optional and only neccesary,
  94.  if you have a strange modem or remotesite.
  95.  
  96.  To make small steps from the manual to the automatic dialup, you can
  97.  save your modem settings together with the phonenumber in the modem. If you
  98.  do this, you can already use the defaults for MODEMSETTINGSCONNECT=MSC (ATZ1)
  99.  and PHONENUMBER=PN (ATDS1). The modemcommands for saving config and
  100.  phonenumbers are:
  101.  
  102.     AT&Z1=xxxx and AT&W1 
  103.  
  104.  If you have configured dialup correctly (SANADEVICE=SAD and SANAUNIT=SAU),
  105.  the ONLINE and OFFLINE CLI-commands of the SANA-device are obsolete,
  106.  cause dialup handles this by itself.
  107.  
  108.  
  109.  N O T E S:
  110.  ---------
  111.  
  112.  The program is residentable (pure with the help of cres.o)
  113.  
  114.  HINT: To test the program, use the option TEST. This performs a modem
  115.  ====  internal loopback instead of a real CONNECT. You can see what will 
  116.        go on during CONNECT, HANGUP, etc..
  117.        With SLIP you can even ping yourself or ftp, etc..
  118.        THIS WORKS WITH AMITCP, TOO, IF YOU REMOVE THE ROUTE FOR 'OWNHOST' TO
  119.        THE LOOPBACKINTERFACE. USE: 'route delete <yourhostname>' or see the
  120.        script at the end of the docs!
  121.  
  122.  
  123.  S A V I N G   C O N F I G U R A T I O N:
  124.  ----------------------------------------
  125.  
  126.  It is possible to set any option in ENV:Dialup (Setenv Dialup "PASSWORD=ItsMe")
  127.  
  128.  BEWARE: ONLY the FIRST LINE gets parsed!
  129.  
  130.  To check the settings (from ENV:Dialup) and its parsing, use:
  131.  
  132.     'dialup DEfaults ALL'
  133.  
  134.  
  135.  
  136.  D E S C R I P T I O N   O F   P A R A M E T E R S:
  137.  ==================================================
  138.  
  139.  The template is:
  140.  
  141.  
  142.                 Dialup [COMMAND] [OPTIONS]
  143.  
  144.  
  145.   WARNING:
  146.   ========
  147.  
  148.    Please  note, that COMMAND is optional, too. This means, that if you accept
  149.    the default command (TOGGLE), any misspelled option gets the COMMAND instead
  150.    of the default one and probably pops up the usage requester. Every other
  151.    wrong  option  (or  even  the  first,  when you specified a COMMAND, gets a
  152.    PHONENUMBER.  This  is  not  my  fault, this is the documented behaviour of
  153.    dos.library/ReadArgs() on /M paramters.
  154.  
  155.  
  156.  
  157.  COMMAND=CMD
  158.  ===========
  159.  
  160.  The default is TOGGLE.
  161.  The command can be specified without keyword. The first word of the
  162.  commandline, which is not a keyword or switch of the template, is
  163.  taken as the command.
  164.  
  165.  After any successfully performed command the global environment varialble
  166.  'SLIPCARRIER' is set to 'ON' or 'OFF'.
  167.  
  168.  Possible commands:
  169.  
  170.  CONNECT=CO        Try to build a modem connection.
  171.                    Basically this performs:
  172.  
  173.                        ATZ1, ATDS1, <loginchat>, sana online
  174.  
  175.                    If you want to be sure, that the connection is
  176.                    established, when you start ftp or some other 
  177.                    networking stuff, write a script which calls
  178.  
  179.                        Dialup CONNECT QUIET
  180.  
  181.                    before the net application. QUIET suppress' the
  182.                    warning, if you are already connected.
  183.                    See 'C H A T   O P T I O N S' for the loginchat.
  184.                    Result: 1 if success, 5 if modem is already online
  185.  
  186.  HANGUP=HA         Break a connection. This even works during full
  187.                    data transfer. (Cause it sucks :-) the serial line)
  188.                    Basically this performs:
  189.  
  190.                        +++ ATZ1 sana offline
  191.  
  192.                    If you have a feed, which calls you when packets
  193.                    arrive, you will be called back. To make the modem
  194.                    take the call by itself, the NORECONNECT option must
  195.                    not be set.
  196.                    Result: 0 if success
  197.  
  198.  TOGGLE=TO         Toggles between CONNECT and HANGUP, depending on
  199.                    carrier
  200.                    Result: see CONNECT/HANGUP
  201.  
  202.  TAKE=TA           Sends a ATA\r (MODEMOFFHOOKCMD=MOH) to the modem
  203.                    after RINGS=RGS\K\N rings (MODEMRING=MRG\K) are
  204.                    detected and makes sana device online.
  205.                    If a carrier is detected on startup, only the sana
  206.                    device is made online.
  207.                    Result: 3 if success
  208.  
  209.  QUERY=QU          Querys the modem for some information, even when
  210.                    connected. This will work only with the NODTRIGNORE
  211.                    switch not set (or you configured the modem to
  212.                    ignore DTR anyway).
  213.                    Basically this performs:
  214.  
  215.                        sana offline  +++  ATI2  ATO  sana online
  216.  
  217.                    See MODEMQUERYCMD for the type of information
  218.                    gathered from modem. To get a nice status report from
  219.                    modem you could use:
  220.  
  221.                    > dialup QUery RePortFile "CON:100/100/400/200/..
  222.                                     ..Dialup Query/CLOSE/INACTIVE/WAIT"
  223.                    Result: 2 if success
  224.  
  225.  OFFLINE=OF        sana offline
  226.                    Result: 0 if success
  227.  
  228.  ONLINE=ON         sana online
  229.                    Result: 0 if success
  230.  
  231.  CARRIERDETECT=CD  sana offline, if no carrier and online if carrier.
  232.                    Meaningfull options: AUTOANSWER=AA and if this is 
  233.                    set RINGS=RGS and MODEMSETTINGSCONNECT=MSC
  234.                    Result: 0 if offline, 5 if online
  235.  
  236.  CHECK=CH          Possible at any time! It only sets a returncode:
  237.                    Result: 0 if no carrier, 5 if carrier
  238.  
  239.                    In addition to this the global environment variable
  240.                    'SLIPCARRIER' is set to 'ON' or 'OFF' after this and any
  241.                    other successfully performed command.
  242.  
  243.              Note:
  244.                    For checking the serial line without hitting
  245.                    the hardware directly, it is neccessary to
  246.                    offline/online the slip device to open the
  247.                    serial.device. This normaly doesn't disturb an
  248.                    ongoing transmission.
  249.  
  250.  DEFAULT=DE        Query any option for its default. Helpfull to see
  251.                    what will be sent to modem, and chated with your
  252.                    remote site. Use GIVEALLSETTINGS=ALL if you want
  253.                    to see all the default parameters (including
  254.                    ENV:DIALUP) or name a specific.
  255.  
  256.                        1> setenv DIALUP "MSC=ATsomething"
  257.                        1> Dialup DEFAULT MODEMSETTINGSCONNECT
  258.                        MODEMSETTINGSCONNECT=MSC/K: ATsomething
  259.  
  260.                    or 
  261.  
  262.                        1> Dialup DEFAULT GIVEALLSETTTINGS
  263.                        CONNECTSTRING=CS/F: 19200/V42b
  264.                        SANAUNIT=SAU/K/N: 0
  265.                        SANADEVICE=SAD/K: Networks/rhcslip.device
  266.                        NORECONNECT=NRC/S: OFF
  267.  
  268.                        [ .. ]
  269.  
  270.                        RINGS=RGS/K/N: 1
  271.                        MODEMCONNECTTIME=MCT/K/N: 40
  272.                        REDIALDELAY=RDD/K/N: 60
  273.                        PHONENUMBER=PN/K/M: ATDS1 
  274.                        MODEMSETTINGSCONNECT=MSC/K: ATZ1
  275.  
  276.  
  277.  O P T I O N S:
  278.  ==============
  279.  
  280.  General notes on paramters:
  281.  
  282.   - All options can be kept set for any of the above commands, but not all
  283.     have a meaning to a specific command.
  284.  
  285.   - To send special chars, use \n for LF, \r for CR and \t for TAB.
  286.     To send a single \ use \\.
  287.     WUS only has been extended to make "\*" delay 1/4 second -GH-
  288.   - For any expected string you can use patterns:
  289.  
  290.         Pattern Matches
  291.         ------- -------
  292.            ?    any single character
  293.            c*   zero or more occurrences of character c
  294.            c+   one or more occurrences of character c
  295.            \?   a question mark (?)
  296.            \*   an asterisk (*) (Version 3.06 NOT for WUS! -GH-)
  297.            \+   a plus sign (+)
  298.                 (The \* is a 1/4 second intercharacter delay for WUS)
  299.  
  300.         Any other character must match exactly.
  301.         The following table lists some examples:
  302.  
  303.         Pattern Matches
  304.         ------- -------
  305.           abc   only abc
  306.           ab*c  ac, abc, or abbc
  307.           ab+c  abc, abbc, or abbbc
  308.           ab?*c a string starting with ab and ending in c, for
  309.                 example, abxyzc
  310.           ab\*c only ab*c
  311.  
  312.   - Multiple matching strings:
  313.  
  314.         If there is more than one possible string you can specify all
  315.         of them, sparated by '|'. To specify '|' use '?'.
  316.         Example:  MOK="OK|DONE" or MODEMLINEBUSY="NO CARRIER|BUSY"
  317.  
  318.     I thoght a long time about implementing the pattern matching
  319.     through dos calls, but the parsing and specifying of parameters
  320.     would have been a pain:
  321.  
  322.       (#?BUSY\n#?)|(#?NO CARRIER\n#?)|(#?CONNECT#?19200#?\n)|etc.
  323.  
  324.     Write me a mail, if you really would like to have it.
  325.  
  326.  
  327.  
  328.  B A S I C    O P T I O N S:
  329.  ---------------------------
  330.  
  331.  
  332.  PHONENUMBER=PN/K/M      The phonenumber(s!) to dial.
  333.                          If the parameter has a leading 'AT' or '!' no ATD
  334.                          is sent before the number. ('!' will be stripped)
  335.                          Default: S1                    -> ATDS1
  336.  
  337.                          Example: 1234                  -> ATD1234
  338.                                   ATDP1234              -> ATDP1234
  339.                                   !foobar               -> foobar
  340.  
  341.                                   pn S1 pn=S1 pn ATDP1234\
  342.                                            -> ATDS1 ATDS1 ATDP1234
  343.                                  If the call fails with BUSY, it would wait
  344.                                  the REDIALDELAY and try again. If this
  345.                                  fails, too, it immediately trys 1234.
  346.  
  347.                 Warning: Everything what cannot be identifyed as an option
  348.                 =======  or a COMMAND will get a phonenumber. This is not
  349.                          my fault, this is the documented behaviour
  350.                          of dos.library/ReadArgs() on /M paramters.
  351.  
  352.  
  353.  SANADEVICE=SAD/K,       Sana device to use. You have to specify
  354.                          'Networks/yoursana.device', if it is in DEVS:Networks.
  355.                          Default: "NetWorks/ppp.device" (a/o Version 3.06 -GH-)
  356.  
  357.  
  358.  SANAUNIT=SAU/K/N,       Sana unit to use.
  359.                          Default: 0
  360.  
  361.  
  362.  SANACONFIGFILE=SCF/K,   Config file of the sana device. It must match:
  363.  
  364.                          "SERNAME/A,SERUNIT/A/N,SERBAUD/A/N,IPSTR/A,..
  365.                          ..CD=CARRIERDETECT/S,7WIRE/S,EOFMODE/S,MTU/K/N,THEREST/F   
  366.  
  367.                          Examples:
  368.  
  369.                               ppp%d.config, ppp0.config, sys:devs/myconfig
  370.  
  371.                          Default: "ENV:SANA2/ppp0.config" (a/o Vers 3.06 -GH-)
  372.                          (This file gets read by *any* slip device)
  373.  
  374.  
  375.  REDIALDELAY=RDD/K/N     Seconds to wait after a BUSY (MLB\K) before calling
  376.                          the *same* number(s) again. If you specify 0 it will
  377.                          NOT retry on BUSY.
  378.                          Default: 180
  379.  
  380.  
  381.  RINGS=RGS/K/N           Number of rings to wait before the modem should
  382.                          take an icomming call. This takes effect only
  383.                          after a HANGUP or CARRIERDETECT with AUTOANSWER!
  384.                          With the TAKE command this in the number of RINGs
  385.                          to receive from the modem, before takeing the
  386.                          call. For TAKE it is possible to specify 0.
  387.                          Default: 1
  388.  
  389.  
  390.  
  391.  O P E R A T I N G   M O D E S:
  392.  ------------------------------
  393.  
  394.  
  395.  AUTOANSWER=AA/S         Take any incomming call after HANGUP, sana stays
  396.                          online. The parameter RINGS tells the modem how
  397.                          many rings it should wait before offhook.
  398.                          Default: OFF
  399.  
  400.  
  401.  NODTRIGNORE=NDI/S       Disable the sending of AT&D0 to the modem before a
  402.                          CONNECT and AT&D2 after HANGUP. Normaly AT&D0 is
  403.                          necessary, to not drop the line befor makeing
  404.                          sana online.
  405.                          Default: OFF
  406.  
  407.  
  408.  NOSERINIT=NSI/S,        To avoid initialisation of serial line with the
  409.                          parameters from 'ENV:SANA/slip0.config' (in fact
  410.                          SANACONFIGFILE=SCF/K; it is read anyway, to get
  411.                          the device(name) to open)
  412.                          Default: OFF
  413.  
  414.  
  415.  NORECONNECT=NRC/S,      No autoanswer during CONNECT (e. g. carrier lost,
  416.                          remote site calls back).
  417.                          Modem takes phone after first ring until you do
  418.                          a HANGUP without AutoAnswer.
  419.                          Default: OFF
  420.  
  421.  
  422.  
  423.  
  424.  R E P O R T   A N D   D E B U G   O P T I O N S:
  425.  ------------------------------------------------
  426.  
  427.  
  428.  CONNECTSTRING=CS/K      This string is expectd as the connectstring from
  429.                          the modem. If its not found, a requester pops
  430.                          up, telling you the actual connect message.
  431.  
  432.                          If you specify CONNECT you will never see a
  433.                          requester(If your modem gives at leas this answer
  434.                          for a connect).
  435.  
  436.                          With this parameter it is possible to use patterns.
  437.                          See top note for information on patterns.
  438.                          Default: "CONNECT*?19200/V42b"
  439.  
  440.  
  441.  REPORTFILE=RPF/K        Where to put the report of the serial communication.
  442.                          Note: I've never observed that dialup looses *ANY*
  443.                          character. If you have troubles with the serial
  444.                          communication, it is sometimes helpfull to send
  445.                          the output to a file and view it with:
  446.  
  447.                              1> type <reportile> hex
  448.  
  449.                          Another good use is to specify a window like
  450.  
  451.                          RPF="CON:100/100/400/200/Dialup/CLOSE/INACTIVE"
  452.  
  453.                          When you press the (toolmanager) hotkey to start
  454.                          dialup, you can see whats going on. If there is no
  455.                          error, it is closed after successful connection. If
  456.                          an error occours, and you started it with '< NIL:'
  457.                          somehow, a requester pops up, telling you the failure.
  458.                          But during this time the RPF window keeps open and you
  459.                          can examine every detail of the report. I realy like
  460.                          this!
  461.                          Default: stdout
  462.  
  463.                          
  464.  QUIET/S                 Be quiet to stdout and suppress all non fatal messages.
  465.                          Default: OFF
  466.  
  467.  
  468.  STDEER/S                No requesters anymore. Errors and warnings are sent
  469.                          to '*' (console) as long as '*' could be opened and
  470.                          even if there is an interactive inputstream
  471.                          (e.g. shell) for the program.
  472.                          Default: OFF
  473.  
  474.  
  475.  VERBOSE/S               Reports all internal function calls with strings sent
  476.                          to serial line and all expected returns. To avoid
  477.                          intermixing these messages with the serial
  478.                          communication itself, a console widow gets the
  479.                          default for RPF.
  480.                          Default: OFF
  481.  
  482.  
  483.  TEST/S                  This is a very helpfull option. Instead of dialing
  484.                          a number, it does AT&T1. This is a modem internal
  485.                          loopback mode. This enables you to do a ping to
  486.                          yourself *over* the modem. You can even do a ftp to
  487.                          your machine and check the max. transmission speed.
  488.                          After this you can QUERY the modem and look for any
  489.                          errors. This is true for AmiTCP, too. See script at
  490.                          the end. The tcp-test (ping, etc.) is not possible
  491.                          with ppp, however, cause it uses a more complicated
  492.                          transmission concept and doesn't accept this simple
  493.                          loopback.
  494.                          Default: OFF
  495.  
  496.  
  497.  GIVEALLSETTIGNS=ALL/S   This switch is only valid with the DEFAULT command!
  498.                          It shows all current defaults. ENV:Dialup takes
  499.                          effect!
  500.  
  501.  
  502.  
  503.  C H A T   O P T I O N S:
  504.  -----------------------
  505.  
  506.     Note:   The sequence of the chat after CONNECT is:
  507.     =====
  508.             - [Wait and] Send WAKEUPSTRING
  509.             - Wait for LOGINPROMPT
  510.             - Send LOGINNAME or $HOSTNAME.
  511.             - Wait for PASSWORDPROMPT, if not ""
  512.             - Send PASSWORD
  513.             - IF SNDLOGINNAME specified, wait for SNDLOGINPROMPT
  514.             - IF SNDLOGINNAME specified, send     SNDLOGINNAME
  515.             - IF SNDPASSWORD  specified, wait for SNDPASSWORDPROMPT
  516.             - IF SNDPASSWORD  specified, send     SNDPASSWORD=SPW
  517.             - Wait for LOGINOK=LOK if not ""
  518.  
  519.  
  520.  WAITBEFORWUS=WBW/K/N    Seconds to wait befor sending WUS
  521.                          Default: 3
  522.  
  523.  WAKEUPSTRING=WUS/K      String is sent after connect, before 'ogin:' (LIP)
  524.                          is expected. Remember:
  525.                          Use \n for LF, \r for CR, \* for 1/4 second delay
  526.                          and \t for TAB. (Ver 3.06 ^^ -GH-)
  527.                          To send a single \ use \\.
  528.                          No default. As of 3.06, The treatment of \* is
  529.                          unique to the WUS.
  530.                          A "WUS=\r\*\r\*\r" will send 3 cr's with 1/4
  531.                          second pacing between the cr's.
  532.  
  533.  
  534.  LOGINPROMPT=LIP/K       Prompt of the remote site to enter your name.
  535.                          To skip login and password communication use
  536.                          LIP="".
  537.                          Default: "ogin:"
  538.  
  539.  
  540.  LOGINNAME=LIN/K         Name to send after receiving the LOGINPROMPT. If
  541.                          not specified, it will be taken from the environment
  542.                          variable HOSTNAME.
  543.                          No default. (or ${HOSTNAME})
  544.  
  545.  
  546.  LOGINTIMEOUT/K/N        Seconds to wait for the loginprompt of the remote
  547.                          site.
  548.                          Default: 3
  549.  
  550.  
  551.  
  552.  
  553.  PASSWORDPROMPT=PWP/K    Prompt of the remotesite to enter your password.
  554.                          With this parameter it is possible to use patterns,
  555.                          too. See LOGINPROMPT=LIP
  556.                          To skip password communication use PWP="".
  557.                          Default: "assword:"
  558.  
  559.  
  560.  PASSWORD=PW/K           String to send after the PASSWORDPROMPT is received.
  561.                          No default.
  562.  
  563.  
  564.  
  565.  
  566.  SNDLOGINNAME=SLIN/K     This gets sent, if specified at all, after receiving
  567.                          what is set for                     (no default)
  568.  
  569.  
  570.  SNDLOGINPROMPT=SLIP/K   Default: ogin:
  571.  
  572.  
  573.  SNDPASSWORD=SPW/K       This gets sent, if specified at all, after receiving
  574.                          what is set for:                     (no default)
  575.  
  576.  
  577.  SNDPASSWORDPROMPT=SPWP/K Default: "assword:"
  578.  
  579.  
  580.  
  581.  
  582.  LOGINOK=LOK/K,          Message of the remote site after succesfull login.
  583.                          Use LOK "" to skip this check.
  584.                          Default: "Packet mode enabled"
  585.  
  586.  
  587.  LOGINOKTIMEOUT=LOT/K/N  The timeout (in seconds) for the answer (LOK) to a
  588.                          successfull login.
  589.                          Default: 3
  590.  
  591.  
  592.  
  593.  M O D E M   A D J U S T M E N T:
  594.  -------------------------------
  595.  
  596.  MODEMSETTINGSCONNECT=MSC/K  Command string to send to the modem before 
  597.                          any attempt to connect. If you don't want to
  598.                          send something use MSC ""
  599.                          Default: ATZ1
  600.  
  601.  
  602.  MODEMCONNECTTIME=MCT/K/N  The time in seconds, the modem needs to dial and
  603.                          handshake with the remote site.
  604.                          Default: 61
  605.  
  606.  
  607.  MODEMSETTINGHANGUP=MSH/K Command string to send to modem after HANGUP.
  608.                          To avoid this completely use MSH "".
  609.                          Default: ATZ1
  610.  
  611.  
  612.  MODEMQUERYCMD=MQC/K     Hayes commands to query modem. This command is sent
  613.                          to the Modem to query the modemstatus ( or
  614.                          anything else you want to know ).
  615.                          You even can change the configuration of the
  616.                          modem, during it is online.
  617.                          Default: AT&VI2
  618.  
  619.  
  620.  MODEMREADYCMD=MRC/K     Command, the modem answers with MODEMCMDOK=MOK/K (OK)
  621.                          Default: AT
  622.  
  623.  
  624.  MODEMHANGUPCMD=MHC/K    Command to make the modem drop line.
  625.                          Default: ATH0
  626.  
  627.  
  628.  MODEMNOCARRIER=MNC/K    Answer of modem on failed CONNECT
  629.                          Default: NO CARRIER
  630.  
  631.  
  632.  MODEMLINEBUSY=MLB/K     Message of modem when line busy.
  633.                          Default: BUSY
  634.  
  635.  
  636.  MODEMLINEDEAD=MLD/K     Message of modem when it doesn't get a dialtone.
  637.                          Default: NO DIALTONE
  638.  
  639.  
  640.  MODEMRING=MRG/K         Message of modem when a call comes in.
  641.                          Default: RING
  642.  
  643.  
  644.  MODEMANYCONNECT=MAC/K   Message of modem if a connection of any kind has been
  645.                          established.
  646.                          Default: 'CONNECT?*'     (see LOGINPROMPT)
  647.  
  648.  
  649.  MODEMCMDOK=MOK/K        Answer from Modem if command is ok.
  650.                          Default: OK
  651.  
  652.  
  653.  MODEMAACMD=MAAC/K       Make modem take phonecall after RINGS=RGS/K/N
  654.                          Default: ATS0=%d
  655.  
  656.  
  657.  MODEMOFFLINECMD=MOC/K   Make modem accept commands again (offline)
  658.                          Default: +++
  659.  
  660.  
  661.  MODEMONLINECMD=MLC/K    Bring modem online again
  662.                          Default: ATO
  663.  
  664.  
  665.  MODEMTESTCMD=MTC/K      modem to internal loop-back mode
  666.                          Default: AT&T1
  667.  
  668.  
  669.  MODEMOFFHOOKCMD=MOH/K   make modem off hook and answer the call.
  670.                          Default: ATA
  671.  
  672.  
  673.  MODEMTESTOFFCMD=MTO/K   switch of  modem loopback
  674.                          Default: AT&T0
  675.  
  676.  
  677.  MODEMCMDOK=MOK/K        Answer from Modem if command is OK
  678.                          Default: OK
  679.  
  680.  
  681.  
  682.  A d d i t i o n a l   n o t e s:
  683.  --------------------------------
  684.  
  685.   The stackusage is about 3000 Bytes and the memoryusage is less
  686.   than 30K Bytes.
  687.  
  688.   As long as dialup is started from a console (input not NIL:), the
  689.   program messages and the input from the serial line are sent to it.
  690.   If you start it without console, but don't want to see any requester,
  691.   use option STDERR.
  692.  
  693.   If you use VERBOSE, a default window is opened for the serial
  694.   input. You can override this by specifying RPF CON:////dialup..
  695.  
  696.   The best use for this program is to make it startable with a hotkey.
  697.   (e.g. ToolManager) Commandline:
  698.  
  699.       'Dialup REPORTFILE T:dialup.report'.
  700.  
  701.   Think about making it resident, if you can afford the memory.
  702.  
  703.   To stop the program at ANY time press ^C in the shell or start it a second
  704.   time. If you start the program a second time ( e.g. after a BUSY, waiting
  705.   for the REDIALDELAY ) it sends a ^C to its first occurence.  So, if you
  706.   have the programm bound to a hotkey, just press it again to stop the
  707.   (re)dialing.
  708.  
  709.   To reset the modem I use:
  710.  
  711.       'Dialup HANGUP NODTRIGNORE MODEMSETTINGSHANGUP ATZ'
  712.  
  713.   or short:
  714.  
  715.       'Dialup ha ndi msh atz'
  716.  
  717.   To get a system, taking incomming calls after every reboot, add
  718.  
  719.       'Dialup CARRIERDETECT AUTOANSWER QUIET RINGS=n'
  720.  
  721.   to your user-startup. But this only works if no programm is
  722.   causing slip packets beeing sent to the modem, otherwise the
  723.   modem connect could get disturbed.
  724.  
  725.  
  726.   I always load the whole network sw in user startup:
  727.  
  728.    AS225:
  729.    ------
  730.  
  731.     8<------------------------------------------
  732.       INET:c/config > ENV:HOSTNAME HOSTNAME
  733.       INET:c/config > ENV:USER USER
  734.       INET:c/ifconfig lo0 127.1
  735.       INET:c/ifconfig s0 $hostname -trailers
  736.       INET:c/Route add default <yourslipsite> 0
  737.  
  738.       Dialup CARRIERDETECT
  739.  
  740.       IF WARN
  741.           Ping <yourslipsite>
  742.           IF NOT WARN
  743.               Say "Connected to Intearnet"
  744.           EndIF
  745.       EndIF
  746.   8<------------------------------------------
  747.  
  748.  
  749.    AmiTCP:
  750.    -------
  751.  
  752.     8<------------------------------------------
  753.       Run < NIL: > NIL: AmiTCP:AmiTCP
  754.       WaitForPort AMITCP
  755.       Wait 2 secs
  756.       RX "ADDRESS AMITCP;'SET CON NIL:'" ; stops this 'slip.device online/offline' messages.
  757.  
  758.       AmiTCP:bin/ifconfig lo/0 localhost
  759.       AmiTCP:bin/ifconfig Devs:Networks/rhcslip.device/0 xxx.yyy.zz.uuu aaa.bbb.ccc.ddd netmask 255.255.255.0
  760.     
  761.       ;AmiTCP:bin/route add troja.mppmu.mpg.de localhost ; remove to enable ping over modem!
  762.       AmiTCP:bin/route add default 134.107.2.51
  763.       AmiTCP:bin/route add 134.107.2.6
  764.  
  765.       Run < NIL: > NIL: AmiTCP:bin/inetd
  766.       Mount TCP:
  767.  
  768.       Dialup CARRIERDETECT
  769.  
  770.       IF WARN
  771.           Ping <yourslipsite>
  772.           IF NOT WARN
  773.               Say "Connected to Internet"
  774.           EndIF
  775.       EndIF
  776.     8<------------------------------------------
  777.  
  778.  
  779.  Then simply start dialup anytime later and you get connected.
  780.  
  781.  
  782.  Have fun! Questions and bugreports (?? :-) to:
  783.  
  784.              Thomas Kobler
  785.              Libellenstr. 29
  786.              80939 München
  787.              Germany
  788.  
  789.              kobler@mpiw13.mppmu.mpg.de
  790.              +49 89 3241329 (and +49 89 32308311 at work)
  791.              try to 'talk' to me at samson@troja.mppmu.mpg.de or 
  792.                              (kobler@pctok.mppmu.mpg.de at work)
  793.  
  794.  
  795.   After all the time I spent on this stuff, I feel that it would be nice, if
  796.   you would send me something: ranging from an email over nice gifts to
  797.   some financial donations. Its up to you.
  798.  
  799. -------------------------- ADDED BY GENE HESKETT ---------------------------
  800.  
  801. By Gene Heskett, the Version 3.06 hacker.  There were a couple of
  802. miss-spelled keywords (esle=else) I fixed, and a few squawks by SAS/C 6.56
  803. I fixed too. SAS still tosses out a few vars as unused though.
  804.  
  805. I haven't used the above scripts, but I assume they work. I can be reached
  806. at <gene_heskett@wvlink.mpl.com> TFN. A "C" guru? You haven't found one
  807. here!